<?php
/**
 * 公共配置区域
 */
$config1 = require_once EASYSWOOLE_ROOT.'/Config/comm.php';
$config2 = require_once EASYSWOOLE_ROOT.'/Config/setting.php';

//基本的参数配置
$base = [
    'SERVER_NAME' => "EasySwoole",
    'MAIN_SERVER' => [                          // 默认Server配置
        'LISTEN_ADDRESS' => '0.0.0.0',          // 默认Server监听的地址**(3.0.7以前 为 HOST)
        'PORT'           => 9511,               // 默认Server监听的端口
        'SERVER_TYPE'    => EASYSWOOLE_WEB_SOCKET_SERVER,   // 可选为 EASYSWOOLE_SERVER  EASYSWOOLE_WEB_SERVER EASYSWOOLE_WEB_SOCKET_SERVER
        'SOCK_TYPE'      => SWOOLE_TCP,         // 该配置项当为SERVER_TYPE值为TYPE_SERVER时有效
        'RUN_MODEL'      => SWOOLE_PROCESS,     // 默认Server的运行模式
        'SETTING'        => [                   // Swoole Server的运行配置（ 完整配置可见[Swoole文档](https://wiki.swoole.com/wiki/page/274.html) ）
            'worker_num'               => 1,    // 运行的 task_worker 进程数量
            'max_request'              => 5000, // 进程task_worker 完成该数量的请求后将退出，防止内存溢出
            'reload_async' => true,             //设置异步重启开关。设置为true时，将启用异步安全重启特性，Worker进程会等待异步事件完成后再退出。
            'max_wait_time' => 3,
            'enable_static_handler'    => true, // 加入以下两条配置以返回静态文件
            'heartbeat_idle_time'      => 300,  //一个TCP连接如果在180秒内未向服务器端发送数据则中断
            'document_root'            => EASYSWOOLE_ROOT . "/Static",
        ],
        'TASK'=>[
            'workerNum'=>1,                     // 运行的 worker 进程数量
            'maxRunningNum'=>128,               // 完成该数量worker的请求后将退出，防止内存溢出
            'timeout'=>15
        ]
    ],
    'TEMP_DIR' => null,     // 若不配置，则默认框架初始化
    'LOG_DIR' => null,      // 若不配置，则默认框架初始化
    'CONSOLE'     => [      //console组件配置,完整配置可查看:http://easyswoole.com/Manual/3.x/Cn/_book/SystemComponent/Console/Introduction.html
        'ENABLE'         => true,       //是否开启console
        'LISTEN_ADDRESS' => '127.0.0.1',//console服务端监听地址
        'HOST'           => '127.0.0.1',//console客户端连接远程地址
        'PORT'           => 9500,       //console服务端监听端口,客户端连接远程端口
        'EXPIRE'         => '120',      //心跳超时时间
        //'AUTH'           => null,    //鉴权密码,如不需要鉴权可设置null
        'AUTH'           => [
            [
                'USER'        => 'root',
                'PASSWORD'    => 'root',
                'MODULES'     => [
                    'auth', 'server', 'help', 'test'
                ],
                'PUSH_LOG'    => true
            ]
        ]
    ],
    /*################ FAST_CACHE ##################*/
    'FAST_CACHE'=>[
        'PROCESS_NUM'   => 1
    ],
];

//组合其它配置参数
$base = array_merge($base,$config1,$config2);
return $base;

?>
